﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using vudu.EnlaceDatos.SqlServer;
using vudu.Logica.Clases;

namespace vudu.PaginasWeb.G9PracticaMateria
{
    public partial class ConsultarPracticaII : System.Web.UI.Page
    {
        SqlServerPractica sqlServerPractica = new SqlServerPractica();

        protected void Page_Load(object sender, EventArgs e)
        {
            string miRol = (string)Session["rol"];
            if (miRol != "Escuela")
            Response.Redirect("../G3AccesoSistema/InicioSistema.aspx");
            Escuela miEscuela = (Escuela)Session["Usuario"];
            Label1.Text = "Escuela: " + miEscuela.NombreEscuela;
            String IdPractica = ConsultarPractica.IdPracticaSeleccionada;
            int practica = Convert.ToInt32(IdPractica);
            CargarDatosPractica(practica);
            CargarHorasPractica(practica);
        }
        /// <summary>
        /// Funcion que sirve para Cargar el nombre la seccion y el profesor de una practica.
        /// </summary>
        public void CargarDatosPractica(int practica)
        {
            Practica laPractica = new Practica();
            //En este paso se llama a la base de datos para consultar los datos
            //de la practica y asignarlos a un objeto de tipo practica
            laPractica = sqlServerPractica.ConsultarDatosPractica(practica);
            //Si la practica no esta vacia entonces rellena los campos de texto
            if (laPractica != null)
            {              
                    
                     Convert.ToString(laPractica.IdPractica);
                    NombrePractica.Text = laPractica.NombrePractica;
                    Seccion.Text = Convert.ToString(laPractica.NumeroSeccion);
                    NProfesor.Text = laPractica.profesor.Nombre + " " + laPractica.profesor.Apellido;
                    
            }
             
         }
        /// <summary>
        /// Funcion que se encarga de Cargar las horas de la practica con su salon
        /// </summary>
         public void CargarHorasPractica(int practica)
         {
            //Se crea un objeto de tipo Horario de Clase para almacenar los datos de la consulta a la BD
            List<HorarioDeClase> listaHorasPractica = new List<HorarioDeClase>();
            listaHorasPractica = sqlServerPractica.ConsultarHorasPracticas(practica);

            //Si listaHorasPractica no es nulo entonces rellena los campos de texto
            if (listaHorasPractica != null)
            {
                       for (int i = 0; i < listaHorasPractica.Count; i++) 
                         {
                             string dia = listaHorasPractica[i].Dia;
                             DateTime horaIni = listaHorasPractica[i].HoraInicio;
                             DateTime horaF = listaHorasPractica[i].HoraFin;
                             string salon = listaHorasPractica[i].SalonDeClase.Nombre;
                             string tipo = listaHorasPractica[i].SalonDeClase.Tipo;
                             string horaInicio = Convert.ToString(horaIni.Hour) + ":" + "00";
                             string horaFin = Convert.ToString(horaF.Hour) + ":" + "00";

                             //Imprime los valores de acuerdo al dia que le corresponda en el horario
                             switch (dia)
                             {      
                                 case "Lunes":

                                    horaL.Text = horaInicio + " - " + horaFin;
                                    salonL.Text = salon + " - " + tipo;

                                    break;
                                 case "Martes":
                                    horaM.Text = horaInicio + " - " + horaFin;
                                    salonM.Text = salon + " - " + tipo;

                                     break;
                                 case "Miercoles":
                                     horaMI.Text = horaInicio + " - " + horaFin;
                                     salonMi.Text = salon + " - " + tipo;

                                     break;

                                 case "Jueves":
                                     horaJ.Text = horaInicio + " - " + horaFin;
                                     salonJ.Text = salon + " - " + tipo;
      
                                     break;

                                 case "Viernes":
                                     horaV.Text = horaInicio + " - " + horaFin;
                                     salonV.Text = salon + " - " + tipo;

                                     break;

                                 default:
                                     
                                     break;
                             }

                           
                          } 
            }

         }

         protected void salonM_TextChanged(object sender, EventArgs e)
         {

         }

         protected void Volver_Click(object sender, EventArgs e)
         {
             Response.Redirect("../G9PracticaMateria/ConsultarPractica.aspx");
         }

    }
}